from django.db import models
from account.models import User
from utils.base_models import BaseModel

# Create your models here.


class Article(BaseModel):
    # AutoField id要自增
    id = models.AutoField(primary_key=True)
    title = models.CharField(max_length=120)    # 文章标题
    content = models.TextField()    # 文章内容
    publish_date = models.DateTimeField()   # 发布日期
    # models.CASCADE在on_delete表示如果作者被删除了，关联他的作品也会一起删除
    user = models.ForeignKey(User, on_delete=models.CASCADE)

    # 创建数据库名称的时候，都是应用名称+下划线+类名，解决这个问题需要单独配置
    class Meta:
        db_table = "article"  # 设置数据库的名称
        verbose_name = "文章信息"  # 自定义名称
        ordering = ['-publish_date']  # 设置排序，根据发布日期进行排序，前面加-表示倒序
        verbose_name_plural = '文章信息'

    def __str__(self):
        return self.title